import { ApiProperty } from '@nestjs/swagger'

/**
 * 周期考勤统计数据
 */
export class OverallAttendancePeriodDto {
  @ApiProperty({ description: '实际打卡总数' })
  actualCheckins: number

  @ApiProperty({ description: '理论应打卡总数' })
  theoreticalCheckins: number

  @ApiProperty({ description: '打卡率', example: '85%' })
  attendanceRate: string
}

/**
 * 整体学生考勤统计数据DTO
 */
export class OverallAttendanceStatisticsDto {
  @ApiProperty({ description: '已分配班级的学生总数' })
  totalStudents: number

  @ApiProperty({ description: '班级总数' })
  totalClasses: number

  @ApiProperty({ description: '总体考勤数据' })
  total: OverallAttendancePeriodDto

  @ApiProperty({ description: '当前季度考勤数据' })
  quarter: OverallAttendancePeriodDto

  @ApiProperty({ description: '当前月度考勤数据' })
  month: OverallAttendancePeriodDto

  @ApiProperty({ description: '当前周度考勤数据' })
  week: OverallAttendancePeriodDto
} 